package com.ruoyi.common.core.service;

import com.ruoyi.common.core.domain.model.WeChatAuthorizeLoginUserInfoVo;
import com.ruoyi.common.core.domain.model.WeChatMiniAuthorizeVo;
import com.ruoyi.common.core.domain.model.WeChatOauthToken;

/**
 * @Description: 微信公用服务
 * @Author: wk
 * @Date: 2022/7/27 14:59
 * @Version: 1.0
 */
public interface WechatNewService {
    /**
     * 获取开放平台access_token
     * 通过 code 获取
     * 公众号使用
     * @return 开放平台accessToken对象
     */
    WeChatOauthToken getOauth2AccessToken(String code);

    /**
     * 获取开放平台用户信息
     * @param accessToken 调用凭证
     * @param openid 普通用户的标识，对当前开发者帐号唯一
     * 公众号使用
     * @return 开放平台用户信息对象
     */
    WeChatAuthorizeLoginUserInfoVo getSnsUserInfo(String accessToken, String openid);

    /**
     * 小程序登录凭证校验
     * @return 小程序登录校验对象
     */
    WeChatMiniAuthorizeVo miniAuthCode(String code);

}
